package cn.com.bluemoon.daps.notice.template;

import cn.com.bluemoon.daps.notice.template.base.BaseMessage;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;

/**
 * @author Jarod.Kong
 * @date 2021/6/11 13:14
 */

@Data
@NoArgsConstructor
public class ApplyPublishMessage extends BaseMessage {
    /**
     * 头部，eg： 用户 张三@zhangsan 的开发同步DDL语句执行结束，相关信息如下：
     */
    @NotNull(message = "相关信息头部不可为空")
    private String header;
    /**
     * 模型信息，eg: 模型名称：电商OMS数据模型
     */
    private String modelId;

    @NotNull(message = "模型名不可为空")
    private String modelName;

    @NotNull(message = "数据源名称不可为空")
    private String dataSourceName;

    /**
     * 数据相关，eg: 业务线：电商
     */
    private String bizDesc;
    /**
     * 变更单号：1000001
     * <p>
     * 变更描述：OMS订单发货单模型上线
     */
    @NotNull(message = "变更信息不可为空")
    private String changeOrder, changeDesc;
    /**
     * 高危语句：是（含有drop语句）
     */
    @NotNull(message = "高危语句情况不可为空")
    private String dangerStats;

    /**
     * 自动审核：不通过
     * <p>
     * 人工审核：不通过
     */
    @NotNull(message = "自动审核、人工审核不可为空")
    private String autoAudit, manAudit;
    /**
     * <pre>
     * 消息尾部，eg: 1)如需处理，请登录数据资产平台：
     *         https://xxxxx.bluemoon.com.cn/data_asset_management
     *         2)本邮件仅通知，无需人工处理。
     * </pre>
     */
    @NotNull(message = "消息尾部不可为空")
    private String footer;

    @Override
    public String getMsgTemplatePath() {
        return "apply_publish_template.html";
    }
}

